perm filename PPROC2.SRC[PNT,HE] blob
sn#492437 filedate 1980-01-15 generic text, type T, neo UTF8
1) PPROC2.SAI[PNT,HE] and 2) PPROC2.OLD[PNT,HE] 1-15-80 18:20 pages 2,2
**** File 1) PPROC2.SAI[PNT,HE]/2P/15L
1) RETURN(I);
1) END;
1) ! cmonproc;
1) RECURSIVE PROCEDURE MFORCECM(REFERENCE rptr(expr$)HEADER,HEAD,TAIL;INTEGER BITOFFSET);
1) BEGIN
**** File 2) PPROC2.OLD[PNT,HE]/2P/15L
2) RETURN(I-1);
2) END;
2) ! cmonproc;
2) ifc false thenc
2) RECURSIVE PROCESURE DURCM;
2) BEGIN
2) RPTR(EXPR$) EXP;
2) GTOKEN;
2) IF TOKEN≠">"≠TOKEN≠"≥" THEN ERROR("Need > or ≥ for duration cm"
2) EXP←$$GTSCEXPR("=")
2) endc
2) PROCEDURE FORCECM(rptr(expr$)e;INTEGER BITOFFSET);
2) BEGIN
***************
**** File 1) PPROC2.SAI[PNT,HE]/3P/6L
1) INTEGER BITS,DEVBITS,TMPOFF;
1) RPTR(SYMBOL)C;
1) ! DEVBITS←0;
1) DEVBITS←BITOFFSET LAND '17;
1) WORD_READ("(");
**** File 2) PPROC2.OLD[PNT,HE]/3P/15L
2) INTEGER BITS,DEVBITS;
2) RPTR(SYMBOL)C;
2) DEVBITS←BITOFFSET LAND '7;
2) WORD_READ("(");
***************
**** File 1) PPROC2.SAI[PNT,HE]/3P/16L
1) WORD_READ(")");
1) GTOKEN;
**** File 2) PPROC2.OLD[PNT,HE]/3P/24L
2) GTOKEN(")");
2) GTOKEN;
***************
**** File 1) PPROC2.SAI[PNT,HE]/3P/34L
1) TMPOFF←$TMPOFF; $TMPOFF←UPLEVEL($TMPOFF);
1) PPROC2.SAI[PNT,HE] and 2) PPROC2.OLD[PNT,HE] 1-15-80 18:20 pages 3,3
**** File 2) PPROC2.OLD[PNT,HE]/3P/42L
2) ifc false thenc WORD_READ("STOP"); BITS←BITS+'10000; ! stop bit;
2) GTOKEN;
2) IF EQU(TOKEN,"BARM") THEN BEGIN DEVBITS←DEVBITS+'4; BITS←BITS+'4; END
2) ELSE IF EQU(TOKEN,"YARM") THEN BEGIN DEVBITS←DEVBITS+1; BITS←BITS+1; END
2) ELSE ERROR("FORCECM: can only stop an arm"); endc
2) $TMPOFF←$TMPOFF+1;
2) PARSE;
2) ACTION←$$PCODE;
2) $$PCODE←$APPEND($FRCPCODE(E,EXP,ACTION,BITS,DEVBITS),$KVARPCODE(1));
2) GTOKEN(FALSE);
2) END;
2) PROCEDURE MFORCECM(REFERENCE rptr(expr$)HEADER,HEAD,TAIL;INTEGER BITOFFSET);
2) BEGIN
2) INTEGER V; BOOLEAN GE; RPTR(EXPR$)EXP,ACTION;
2) INTEGER I,IPC;
2) INTEGER BITS,DEVBITS,TMPOFF;
2) RPTR(SYMBOL)C;
2) ! DEVBITS←0;
2) DEVBITS←BITOFFSET LAND '17;
2) WORD_READ("(");
2) GTOKEN;
2) IF EQU(TOKEN,"XHAT") THEN BITS←BITOFFSET
2) ELSE IF EQU(TOKEN,"YHAT") THEN BITS←BITOFFSET+'1000
2) ELSE IF EQU(TOKEN,"ZHAT") THEN BITS←BITOFFSET+'2000
2) ELSE ERROR("FORCECM: only principal directions allowed");
2) WORD_READ(")");
2) GTOKEN;
2) IF TOKEN="≥" OR TOKEN =">" THEN BITS←BITS+'100000
2) ELSE IF TOKEN="≤" OR TOKEN="<" THEN BITS←BITS
2) ELSE ERROR("FORCECM: need ≥ or < here");
2) EXP←$$GTANYEXP("FORCECM",#SC);
2) GTOKEN;
2) IF EQU(TOKEN,"IN") THEN
2) BEGIN
2) GTOKEN;
2) IF EQU(TOKEN,"HAND") THEN BITS←BITS
2) ELSE IF EQU(TOKEN,"STATION") THEN BEGIN BITS←BITS+'400; DEVBITS←DEVBITS+'400; END
2) ELSE ERROR("FORCECM: can only specify in HAND or STATION");
2) WORD_READ("DO");
2) END
2) ELSE BEGIN IF NOT EQU(TOKEN,"DO") THEN ERROR("FORCECM: Need DO here");
2) BITS←BITS+'400; DEVBITS←DEVBITS+'400; ! default is station;
2) END;
2) TMPOFF←$TMPOFF; $TMPOFF←UPLEVEL($TMPOFF);
***************
1) PPROC2.SAI[PNT,HE] and 2) PPROC2.OLD[PNT,HE] 1-15-80 18:20 pages 3,3
**** File 1) PPROC2.SAI[PNT,HE]/3P/37L
1) $TMPOFF←TMPOFF;
1) $FFRCPCODE(HEADER,HEAD,TAIL,EXP,ACTION,BITS,DEVBITS,$TMPOFF);
1) $TMPOFF←$TMPOFF+1;
1) GTOKEN(FALSE);
1) END;
1) RECURSIVE PROCEDURE MONPROC(REFERENCE RPTR(EXPR$)HEADER,HEAD,TAIL;INTEGER BITS);
1) BEGIN
**** File 2) PPROC2.OLD[PNT,HE]/3P/89L
2) $TMPOFF←TMPOFF+1;
2) $FFRCPCODE(HEADER,HEAD,TAIL,EXP,ACTION,BITS,DEVBITS,$TMPOFF);
2) GTOKEN(FALSE);
2) END;
2) PROCEDURE MONPROC(REFERENCE RPTR(EXPR$)HEADER,HEAD,TAIL;INTEGER BITS);
2) BEGIN
***************
**** File 1) PPROC2.SAI[PNT,HE]/6P/102L
1) INTERNAL RECURSIVE PROCEDURE MOVEPROC;
1) BEGIN
**** File 2) PPROC2.OLD[PNT,HE]/6P/102L
2) INTERNAL PROCEDURE MOVEPROC;
2) BEGIN
***************
**** File 1) PPROC2.SAI[PNT,HE]/6P/115L
1) RPTR(EXPR$)MOV; INTEGER BITS,TMPOFF;
1) TMPOFF←$TMPOFF;
1) MOV←$$PCODE;
**** File 2) PPROC2.OLD[PNT,HE]/6P/115L
2) RPTR(EXPR$)MOV; INTEGER BITS;
2) MOV←$$PCODE;
***************
**** File 1) PPROC2.SAI[PNT,HE]/6P/137L
1) $TMPOFF←TMPOFF;
1) END;
**** File 2) PPROC2.OLD[PNT,HE]/6P/136L
2) END;
***************
**** File 1) PPROC2.SAI[PNT,HE]/10P/4L
1) IFC FALSE THENC
1) BEGIN
1) PPROC2.SAI[PNT,HE] and 2) PPROC2.OLD[PNT,HE] 1-15-80 18:20 pages 10,10
**** File 2) PPROC2.OLD[PNT,HE]/10P/4L
2) BEGIN
***************
**** File 1) PPROC2.SAI[PNT,HE]/10P/13L
1) END
1) ENDC;
1) END "PPROC2"
**** File 2) PPROC2.OLD[PNT,HE]/10P/12L
2) END;
2) END "PPROC2"
***************